<?php

namespace User\Model;
use Think\Model;

/**
 * 会员模型
 */
class MemberModel extends Model {

	// 数据表名（不包含表前缀）
	protected $tableName = 'member';
	/* 用户模型自动验证 */
	protected $_validate = array(
		/* 验证用户名 */
		array('username', '1,30', -1, self::EXISTS_VALIDATE, 'length'), //用户名长度不合法
		array('username', 'checkDenyMember', -2, self::EXISTS_VALIDATE, 'callback'), //用户名禁止注册
		array('username', '', -3, self::EXISTS_VALIDATE, 'unique'), //用户名被占用

		/* 验证密码 */
		array('password', '6,32', -4, self::EXISTS_VALIDATE, 'length'), //密码长度不合法

		// /* 验证邮箱 */
		// array('email', 'email', -5, self::EXISTS_VALIDATE), //邮箱格式不正确
		// array('email', '1,32', -6, self::EXISTS_VALIDATE, 'length'), //邮箱长度不合法
		// array('email', 'checkDenyEmail', -7, self::EXISTS_VALIDATE, 'callback'), //邮箱禁止注册
		// array('email', '', -8, self::EXISTS_VALIDATE, 'unique'), //邮箱被占用

		// /* 验证手机号码 */
		// array('mobile', '//', -9, self::EXISTS_VALIDATE), //手机格式不正确 TODO:
		// array('mobile', 'checkDenyMobile', -10, self::EXISTS_VALIDATE, 'callback'), //手机禁止注册
		// array('mobile', '', -11, self::EXISTS_VALIDATE, 'unique'), //手机号被占用
	);

	/* 用户模型自动完成 */
	protected $_auto = array(
		array('password', 'think_ucenter_md5', self::MODEL_BOTH, 'function', UC_AUTH_KEY),
		
	);

	


	/**
	 * 用户登录认证
	 * @param  string  $username 用户名
	 * @param  string  $password 用户密码
	 * @param  integer $type     用户名类型 （1-用户名，2-邮箱，3-手机，4-UID）
	 * @return integer           登录成功-用户ID，登录失败-错误编号
	 */
	public function login($username, $password,) {
		$map = array();
		
		$map['username'] = $username;
		

		/* 获取用户数据 */
		$user = $this->where($map)->find();

		if (is_array($user)) {

			/* 验证用户密码 */
			if (think_ucenter_md5($password, UC_AUTH_KEY) === $user['password']) {
				return 1; 登录成功
			} else {
				return 0; //密码错误

			}
		} else {
			return -1; //用户不存在或被禁用
		}
	}

}
